// Header.h-- Header Class Header for holding header for decompressing DOS
//     Lemmings binary files (*.DAT)
// Copyright (C) 2008  Morgan Conbere
//
// This program is free software; you can redistribute it and/or
// modify it under the terms of the GNU General Public License
// as published by the Free Software Foundation; either version 2
// of the License, or (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, 
// USA.
//
// $Id: Header.h 17 2008-09-08 05:11:57Z mconbere $
//

#ifndef __DECOMPRESS_HEADER_H__
#define __DECOMPRESS_HEADER_H__

#include <stdint.h>

#include <iostream>

namespace decompress
{
    
class Header
{
public:    
    Header(uint8_t bitsLeft, uint8_t checkSum, uint16_t decompressedSize, uint16_t compressedSize);
    void print(std::ostream &out);
    
    int bitCount() { return mBitsLeft; }
    int checkSum() { return mCheckSum; }
    int decompressedSize() { return mDecompressedSize; }
    int compressedSize() { return mCompressedSize; }
    
private:
    int mBitsLeft;
    int mCheckSum;
    int mDecompressedSize;
    int mCompressedSize;
};

} // namespace decompress

#endif // __DECOMPRESS_HEADER_H__
